// src/utils/response.util.ts
import { ResponseDto } from '../utils/response.dto';

export class ResponseUtil {
  /**
   * 成功响应
   * @param data 返回的数据
   * @param message 成功消息
   * @param statusCode 状态码
   */
  static success<T>(data?: T, message = 'Success', statusCode = 200): ResponseDto<T> {
    return new ResponseDto(statusCode, message, data);
  }

  /**
   * 失败响应
   * @param message 错误消息
   * @param statusCode 状态码
   * @param data 错误数据（可选）
   */
  static error<T>(message = 'Error', statusCode = 500, data?: T): ResponseDto<T> {
    const response = new ResponseDto<T>(statusCode, message);
    if (data) {
      response.data = data;
    }
    return response;
  }
}